\hypertarget{structnlb__affinity__hash__table}{
\section{Referência à estrutura nlb\_\-affinity\_\-hash\_\-table}
\label{structnlb__affinity__hash__table}\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}}
}
Tabela HASH para gerenciar a afinidade entre um cliente e um servidor.  


{\tt \#include $<$hash-afinidades.h$>$}

\subsection*{Campos de Dados}
\begin{CompactItemize}
\item 
struct \hyperlink{structnlb__affinity}{nlb\_\-affinity} $\ast$$\ast$ \hyperlink{structnlb__affinity__hash__table_3b81f4ad54e2194b66071822fc6eee30}{hash\_\-table}
\begin{CompactList}\small\item\em Tabela HASH. \item\end{CompactList}\item 
unsigned int \hyperlink{structnlb__affinity__hash__table_bada4a3fdb52853aa9a77a8a06ee3e05}{entries}
\begin{CompactList}\small\item\em Numero de registros ocupados na tabela HASH. \item\end{CompactList}\item 
int \hyperlink{structnlb__affinity__hash__table_4b4c628441e1bec9a60ca2681ba2d732}{entry\_\-size}
\begin{CompactList}\small\item\em sizeof(struct nlb\_\-affinity) \item\end{CompactList}\item 
unsigned int \hyperlink{structnlb__affinity__hash__table_ea5d3c3b2391e381f77fa332ded0aac9}{hash\_\-mask}
\begin{CompactList}\small\item\em Capacidade da tabela HASH. \item\end{CompactList}\item 
u32 \hyperlink{structnlb__affinity__hash__table_2745f2fc4e97344df0eb1367cfa3d7c9}{hash\_\-random}
\item 
rwlock\_\-t \hyperlink{structnlb__affinity__hash__table_9fa3a269a8196531f64c310ee77d67ed}{rwlock}
\begin{CompactList}\small\item\em Usada para garantir atomicidade nas operacoes de leitura/escritra no \hyperlink{structcluster}{cluster}. \item\end{CompactList}\end{CompactItemize}


\subsection{Descrição detalhada}
Tabela HASH para gerenciar a afinidade entre um cliente e um servidor. 

Definido na linha 33 do ficheiro hash-afinidades.h.

\subsection{Documentação dos campos e atributos}
\hypertarget{structnlb__affinity__hash__table_3b81f4ad54e2194b66071822fc6eee30}{
\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}!hash\_\-table@{hash\_\-table}}
\index{hash\_\-table@{hash\_\-table}!nlb_affinity_hash_table@{nlb\_\-affinity\_\-hash\_\-table}}
\subsubsection[hash\_\-table]{\setlength{\rightskip}{0pt plus 5cm}struct {\bf nlb\_\-affinity}$\ast$$\ast$ {\bf nlb\_\-affinity\_\-hash\_\-table::hash\_\-table}\hspace{0.3cm}{\tt  \mbox{[}read\mbox{]}}}}
\label{structnlb__affinity__hash__table_3b81f4ad54e2194b66071822fc6eee30}


Tabela HASH. 



Definido na linha 38 do ficheiro hash-afinidades.h.

Referenciado por hash\_\-add(), hash\_\-exit(), hash\_\-grow(), hash\_\-init(), hash\_\-lookup() e hash\_\-remove\_\-node\_\-affinities().\hypertarget{structnlb__affinity__hash__table_bada4a3fdb52853aa9a77a8a06ee3e05}{
\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}!entries@{entries}}
\index{entries@{entries}!nlb_affinity_hash_table@{nlb\_\-affinity\_\-hash\_\-table}}
\subsubsection[entries]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf nlb\_\-affinity\_\-hash\_\-table::entries}}}
\label{structnlb__affinity__hash__table_bada4a3fdb52853aa9a77a8a06ee3e05}


Numero de registros ocupados na tabela HASH. 



Definido na linha 43 do ficheiro hash-afinidades.h.

Referenciado por hash\_\-add(), hash\_\-init() e hash\_\-remove\_\-node\_\-affinities().\hypertarget{structnlb__affinity__hash__table_4b4c628441e1bec9a60ca2681ba2d732}{
\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}!entry\_\-size@{entry\_\-size}}
\index{entry\_\-size@{entry\_\-size}!nlb_affinity_hash_table@{nlb\_\-affinity\_\-hash\_\-table}}
\subsubsection[entry\_\-size]{\setlength{\rightskip}{0pt plus 5cm}int {\bf nlb\_\-affinity\_\-hash\_\-table::entry\_\-size}}}
\label{structnlb__affinity__hash__table_4b4c628441e1bec9a60ca2681ba2d732}


sizeof(struct nlb\_\-affinity) 



Definido na linha 48 do ficheiro hash-afinidades.h.

Referenciado por hash\_\-add() e hash\_\-init().\hypertarget{structnlb__affinity__hash__table_ea5d3c3b2391e381f77fa332ded0aac9}{
\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}!hash\_\-mask@{hash\_\-mask}}
\index{hash\_\-mask@{hash\_\-mask}!nlb_affinity_hash_table@{nlb\_\-affinity\_\-hash\_\-table}}
\subsubsection[hash\_\-mask]{\setlength{\rightskip}{0pt plus 5cm}unsigned int {\bf nlb\_\-affinity\_\-hash\_\-table::hash\_\-mask}}}
\label{structnlb__affinity__hash__table_ea5d3c3b2391e381f77fa332ded0aac9}


Capacidade da tabela HASH. 



Definido na linha 53 do ficheiro hash-afinidades.h.

Referenciado por hash\_\-add(), hash\_\-alloc(), hash\_\-grow(), hash\_\-init(), hash\_\-lookup() e hash\_\-remove\_\-node\_\-affinities().\hypertarget{structnlb__affinity__hash__table_2745f2fc4e97344df0eb1367cfa3d7c9}{
\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}!hash\_\-random@{hash\_\-random}}
\index{hash\_\-random@{hash\_\-random}!nlb_affinity_hash_table@{nlb\_\-affinity\_\-hash\_\-table}}
\subsubsection[hash\_\-random]{\setlength{\rightskip}{0pt plus 5cm}u32 {\bf nlb\_\-affinity\_\-hash\_\-table::hash\_\-random}}}
\label{structnlb__affinity__hash__table_2745f2fc4e97344df0eb1367cfa3d7c9}




Definido na linha 55 do ficheiro hash-afinidades.h.

Referenciado por hash(), hash\_\-grow() e hash\_\-init().\hypertarget{structnlb__affinity__hash__table_9fa3a269a8196531f64c310ee77d67ed}{
\index{nlb\_\-affinity\_\-hash\_\-table@{nlb\_\-affinity\_\-hash\_\-table}!rwlock@{rwlock}}
\index{rwlock@{rwlock}!nlb_affinity_hash_table@{nlb\_\-affinity\_\-hash\_\-table}}
\subsubsection[rwlock]{\setlength{\rightskip}{0pt plus 5cm}rwlock\_\-t {\bf nlb\_\-affinity\_\-hash\_\-table::rwlock}}}
\label{structnlb__affinity__hash__table_9fa3a269a8196531f64c310ee77d67ed}


Usada para garantir atomicidade nas operacoes de leitura/escritra no \hyperlink{structcluster}{cluster}. 



Definido na linha 60 do ficheiro hash-afinidades.h.

Referenciado por hash\_\-add(), hash\_\-init(), hash\_\-lookup() e hash\_\-remove\_\-node\_\-affinities().

A documentação para esta estrutura foi gerada a partir do seguinte ficheiro:\begin{CompactItemize}
\item 
\hyperlink{hash-afinidades_8h}{hash-afinidades.h}\end{CompactItemize}
